1. Field of the Invention
This invention relates generally to computer networks, and, more particularly, to computer networks including multiple computer systems, wherein one of the computer systems sends screen image information to another one of the computer systems.
2. Description of the Related Art
The United States government has enacted legislation that requires all information technology purchased by the government to be accessible to the disabled. The legislation establishes certain standards for accessible Web content, accessible user agents (i.e., Web browsers), and accessible applications running on client desktop computers. Web content, Web browsers, and client applications developed according to these standards are enabled to work with assistive technologies, such as screen reading programs (i.e., screen readers) used by visually impaired users.
There is one class of applications, however, for which there is currently no accessible solution for visually impaired users. This class includes applications that allow computer system users (i.e., users of client computer systems, or “clients”) to share a remote desktop running on another user's computer (e.g., on a server computer system, or “server”). At least some of these applications allow a user of a client to control an input device (e.g., a keyboard or mouse) of the server, and display the updated desktop on the client. Examples of these types of application include Lotus® Sametime®, Microsoft® NetMeeting®, Microsoft® Terminal Service, and Symantec® PCAnywhere® on Windows® platforms, and the Distributed Console Access Facility (DCAF) on OS/2® platforms. In these applications, bitmap images (i.e., bitmaps) of the server display screen are sent to the client for rerendering. Keyboard and mouse inputs (i.e., events) are sent from the client to the server to simulate the client user interacting with the server desktop.
An accessibility problem arises in the above described class of applications in that the application resides on the server machine, and only an image of the server display screen is displayed on the client. As a result, there is no semantic information at the client about the objects within the screen image being displayed. For example, if an application window being shared has a menu bar, a sighted user of the client will see the menu, and understand that he or she can select items in the menu. On the other hand, a visually impaired user of the client typically depends on a screen reader to interpret the screen, verbally describe that there is a menu bar (i.e., menu) displayed, and then verbally describe (i.e., read) the choices on the menu.
With no semantic information available at the client, a screen reader running on the client will only know that there is an image displayed. The screen reader will not know that there is a menu inside the image and, therefore, will not be able to convey that significance or meaning to the visually-impaired user of the client.
Current attempts to solve this problem have included use of optical character recognition (OCR) technology to extract text from the image, and create an off-screen model for processing by a screen reader. These methods are inadequate because they do not provide semantic information, are prone to error, and are difficult to translate.